Scroll to navigation

rte_meter.h(3) DPDK rte_meter.h(3)

NAME

rte_meter.h

SYNOPSIS

#include <stdint.h>

Data Structures


struct rte_meter_srtcm_params
struct rte_meter_trtcm_params
struct rte_meter_trtcm_rfc4115_params
struct rte_meter_trtcm
struct rte_meter_trtcm_rfc4115

Enumerations


enum rte_color { RTE_COLOR_GREEN = 0, RTE_COLOR_YELLOW, RTE_COLOR_RED, RTE_COLORS }

Functions


int rte_meter_srtcm_profile_config (struct rte_meter_srtcm_profile *p, struct rte_meter_srtcm_params *params)
int rte_meter_trtcm_profile_config (struct rte_meter_trtcm_profile *p, struct rte_meter_trtcm_params *params)
int rte_meter_trtcm_rfc4115_profile_config (struct rte_meter_trtcm_rfc4115_profile *p, struct rte_meter_trtcm_rfc4115_params *params)
int rte_meter_srtcm_config (struct rte_meter_srtcm *m, struct rte_meter_srtcm_profile *p)
int rte_meter_trtcm_config (struct rte_meter_trtcm *m, struct rte_meter_trtcm_profile *p)
int rte_meter_trtcm_rfc4115_config (struct rte_meter_trtcm_rfc4115 *m, struct rte_meter_trtcm_rfc4115_profile *p)
static enum rte_color rte_meter_srtcm_color_blind_check (struct rte_meter_srtcm *m, struct rte_meter_srtcm_profile *p, uint64_t time, uint32_t pkt_len)
static enum rte_color rte_meter_srtcm_color_aware_check (struct rte_meter_srtcm *m, struct rte_meter_srtcm_profile *p, uint64_t time, uint32_t pkt_len, enum rte_color pkt_color)
static enum rte_color rte_meter_trtcm_color_blind_check (struct rte_meter_trtcm *m, struct rte_meter_trtcm_profile *p, uint64_t time, uint32_t pkt_len)
static enum rte_color rte_meter_trtcm_color_aware_check (struct rte_meter_trtcm *m, struct rte_meter_trtcm_profile *p, uint64_t time, uint32_t pkt_len, enum rte_color pkt_color)
static enum rte_color rte_meter_trtcm_rfc4115_color_blind_check (struct rte_meter_trtcm_rfc4115 *m, struct rte_meter_trtcm_rfc4115_profile *p, uint64_t time, uint32_t pkt_len)
static enum rte_color rte_meter_trtcm_rfc4115_color_aware_check (struct rte_meter_trtcm_rfc4115 *m, struct rte_meter_trtcm_rfc4115_profile *p, uint64_t time, uint32_t pkt_len, enum rte_color pkt_color)

Detailed Description

RTE Traffic Metering

Traffic metering algorithms:

1.
Single Rate Three Color Marker (srTCM): defined by IETF RFC 2697
2.
Two Rate Three Color Marker (trTCM): defined by IETF RFC 2698
3.
Two Rate Three Color Marker (trTCM): defined by IETF RFC 4115

Definition in file rte_meter.h.

Enumeration Type Documentation

enum rte_color

Color

Enumerator

Green
Yellow
Red
Number of colors

Definition at line 32 of file rte_meter.h.

Function Documentation

int rte_meter_srtcm_profile_config (struct rte_meter_srtcm_profile * p, struct rte_meter_srtcm_params * params)

srTCM profile configuration

Parameters:

p Pointer to pre-allocated srTCM profile data structure
params srTCM profile parameters

Returns:

0 upon success, error code otherwise

int rte_meter_trtcm_profile_config (struct rte_meter_trtcm_profile * p, struct rte_meter_trtcm_params * params)

trTCM profile configuration

Parameters:

p Pointer to pre-allocated trTCM profile data structure
params trTCM profile parameters

Returns:

0 upon success, error code otherwise

int rte_meter_trtcm_rfc4115_profile_config (struct rte_meter_trtcm_rfc4115_profile * p, struct rte_meter_trtcm_rfc4115_params * params)

trTCM RFC 4115 profile configuration

Parameters:

p Pointer to pre-allocated trTCM profile data structure
params trTCM profile parameters

Returns:

0 upon success, error code otherwise

int rte_meter_srtcm_config (struct rte_meter_srtcm * m, struct rte_meter_srtcm_profile * p)

srTCM configuration per metered traffic flow

Parameters:

m Pointer to pre-allocated srTCM data structure
p srTCM profile. Needs to be valid.

Returns:

0 upon success, error code otherwise

int rte_meter_trtcm_config (struct rte_meter_trtcm * m, struct rte_meter_trtcm_profile * p)

trTCM configuration per metered traffic flow

Parameters:

m Pointer to pre-allocated trTCM data structure
p trTCM profile. Needs to be valid.

Returns:

0 upon success, error code otherwise

int rte_meter_trtcm_rfc4115_config (struct rte_meter_trtcm_rfc4115 * m, struct rte_meter_trtcm_rfc4115_profile * p)

trTCM RFC 4115 configuration per metered traffic flow

Parameters:

m Pointer to pre-allocated trTCM data structure
p trTCM profile. Needs to be valid.

Returns:

0 upon success, error code otherwise

static enum rte_color rte_meter_srtcm_color_blind_check (struct rte_meter_srtcm * m, struct rte_meter_srtcm_profile * p, uint64_t time, uint32_t pkt_len) [inline], [static]

srTCM color blind traffic metering

Parameters:

m Handle to srTCM instance
p srTCM profile specified at srTCM object creation time
time Current CPU time stamp (measured in CPU cycles)
pkt_len Length of the current IP packet (measured in bytes)

Returns:

Color assigned to the current IP packet

Definition at line 397 of file rte_meter.h.

static enum rte_color rte_meter_srtcm_color_aware_check (struct rte_meter_srtcm * m, struct rte_meter_srtcm_profile * p, uint64_t time, uint32_t pkt_len, enum rte_color pkt_color) [inline], [static]

srTCM color aware traffic metering

Parameters:

m Handle to srTCM instance
p srTCM profile specified at srTCM object creation time
time Current CPU time stamp (measured in CPU cycles)
pkt_len Length of the current IP packet (measured in bytes)
pkt_color Input color of the current IP packet

Returns:

Color assigned to the current IP packet

Definition at line 438 of file rte_meter.h.

static enum rte_color rte_meter_trtcm_color_blind_check (struct rte_meter_trtcm * m, struct rte_meter_trtcm_profile * p, uint64_t time, uint32_t pkt_len) [inline], [static]

trTCM color blind traffic metering

Parameters:

m Handle to trTCM instance
p trTCM profile specified at trTCM object creation time
time Current CPU time stamp (measured in CPU cycles)
pkt_len Length of the current IP packet (measured in bytes)

Returns:

Color assigned to the current IP packet

Definition at line 480 of file rte_meter.h.

static enum rte_color rte_meter_trtcm_color_aware_check (struct rte_meter_trtcm * m, struct rte_meter_trtcm_profile * p, uint64_t time, uint32_t pkt_len, enum rte_color pkt_color) [inline], [static]

trTCM color aware traffic metering

Parameters:

m Handle to trTCM instance
p trTCM profile specified at trTCM object creation time
time Current CPU time stamp (measured in CPU cycles)
pkt_len Length of the current IP packet (measured in bytes)
pkt_color Input color of the current IP packet

Returns:

Color assigned to the current IP packet

Definition at line 522 of file rte_meter.h.

static enum rte_color rte_meter_trtcm_rfc4115_color_blind_check (struct rte_meter_trtcm_rfc4115 * m, struct rte_meter_trtcm_rfc4115_profile * p, uint64_t time, uint32_t pkt_len) [inline], [static]

trTCM RFC4115 color blind traffic metering

Parameters:

m Handle to trTCM instance
p trTCM profile specified at trTCM object creation time
time Current CPU time stamp (measured in CPU cycles)
pkt_len Length of the current IP packet (measured in bytes)

Returns:

Color assigned to the current IP packet

Definition at line 565 of file rte_meter.h.

static enum rte_color rte_meter_trtcm_rfc4115_color_aware_check (struct rte_meter_trtcm_rfc4115 * m, struct rte_meter_trtcm_rfc4115_profile * p, uint64_t time, uint32_t pkt_len, enum rte_color pkt_color) [inline], [static]

trTCM RFC4115 color aware traffic metering

Parameters:

m Handle to trTCM instance
p trTCM profile specified at trTCM object creation time
time Current CPU time stamp (measured in CPU cycles)
pkt_len Length of the current IP packet (measured in bytes)
pkt_color Input color of the current IP packet

Returns:

Color assigned to the current IP packet

Definition at line 608 of file rte_meter.h.

Author

Generated automatically by Doxygen for DPDK from the source code.

Thu May 23 2024 Version 23.11.0